package com.bh.ledger.vo;

import com.bh.common.annotation.Dict;
import com.bh.common.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 台帐明细对象 jc_ledger_detail
 *
 * @author slx
 * @date 2023-06-23
 */
@ApiModel(value = "台帐明细对象VO", description = "台帐明细对象VO")
@Data
public class JcLedgerDetailVo implements Serializable {

    private Long id;

    private String createName;

    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 金额
     */
    @ApiModelProperty("金额")
    @Excel(name = "金额")
    private BigDecimal amount;

    /**
     * 费用类型
     */
    @Dict(dictTable = "jc_fee_type", dictLabel = "name", dictValue = "id", dictAlias = "jcFeeTypeIdDtLabel")
    @ApiModelProperty("费用类型")
    @Excel(name = "费用类型")
    private Long jcFeeTypeId;
    private String jcFeeTypeIdDtLabel;

    /**
     * 台账类型(正常(自动0)、调整(手动1))
     */
    @ApiModelProperty("台账类型(正常(自动0)、调整(手动1))")
    @Excel(name = "台账类型(正常(自动0)、调整(手动1))")
    private Integer category;

    /**
     * 单据类型(订单、运单,0 订单 1 运单 2 派车单 4 费用传递,3 其他费用)
     */
    @ApiModelProperty("单据类型(订单、运单,0 订单 1 运单 2 派车单 4 费用传递,3 其他费用)")
    @Excel(name = "单据类型(订单、运单,0 订单 1 运单 2 派车单 4 费用传递,3 其他费用)")
    private Integer type;

    /**
     * 订单ID
     */
    @ApiModelProperty("订单ID")
    @Excel(name = "订单ID")
    private Long jcOrderId;
}
